import pandas as pd
import numpy as np

# 创建包含缺失值的数据
data = {
    '姓名': ['张三', '李四', '王五', '赵六', '钱七', '孙八'],
    '年龄': [25, 30, np.nan, 28, 32, 29],
    '城市': ['北京', '上海', '广州', None, '杭州', '南京'],
    '薪资': [8000, 12000, 15000, 10000, np.nan, 11000]
}

df = pd.DataFrame(data)
print("原始数据:")
print(df)

# 检查缺失值
print("\n检查缺失值:")
print(df.isnull())
print("\n每列缺失值的数量:")
print(df.isnull().sum())

# 处理缺失值
# 删除包含缺失值的行

df_dropna = df.dropna()
print("\n删除缺失值后的数据:")
print(df_dropna)

# 使用特定值填充缺失值
df_fill = df.fillna(
    {
        '年龄': df['年龄'].mean(),
        '薪资': df['薪资'].mean(),
        '城市': '其他'
    }
)
print("\n填充缺失值后的数据:")
print(df_fill)

#删除重复行
df_dup = pd.DataFrame({
    'A': [1, 2, 2, 3, 3,4],
    'B': [1,2,2,3,3,4]
})
print("\n原始数据:")
print(df_dup)
print("\n删除重复行后的数据:")
print(df_dup.drop_duplicates())